using System;
using System.Collections.Generic;

namespace CMS.Core.Domain
{
    /// <summary>
    /// TiepDan object for NHibernate mapped table TiepDan.
    /// </summary>
    [Serializable]
    public class TiepDan : DomainObject<System.Int32>
    {
        private System.Int32 _SoThuLy;
        private System.DateTime _NgayTiep;
        private System.Int32 _LanTiep;
        private System.String _DiaChi;
        private System.String _NoiDung;
        private System.String _YKLD;
        private System.Int32 _MaLoaiHinh;
        private System.Int32 _MaLinhVuc;
        private System.Int32 _MaDiaBan;
        private System.String _KetQuaGiaiQuyet;
        private DiaBan _DiaBan;
        private LoaiHinh _LoaiHinhLookup;
        private LinhVuc _LinhVucLookup;
        private IList<CongDan> _CongDans = new List<CongDan>();
        private IList<LanhDao> _LanhDaos = new List<LanhDao>();

        public TiepDan()
        {
        }

        public TiepDan(System.Int32 id)
        {
            base.ID = id;
        }

        public virtual System.Int32 MaDiaBan
        {
            get { return _MaDiaBan; }
            set { _MaDiaBan = value; }
        }

        public virtual System.String KetQuaGiaiQuyet
        {
            get { return _KetQuaGiaiQuyet; }
            set { _KetQuaGiaiQuyet = value; }
        }

        public virtual DiaBan DiaBan
        {
            get { return _DiaBan; }
            set { _DiaBan = value; }
        }

         public virtual System.Int32 SoThuLy {
             get { return _SoThuLy; }
             set { _SoThuLy = value;}
         }

         public virtual System.DateTime NgayTiep {
             get { return _NgayTiep; }
             set { _NgayTiep = value;}
         }

         public virtual System.Int32 LanTiep {
             get { return _LanTiep; }
             set { _LanTiep = value;}
         }

         public virtual System.String DiaChi {
             get { return _DiaChi; }
             set { _DiaChi = value;}
         }

         public virtual System.String NoiDung {
             get { return _NoiDung; }
             set { _NoiDung = value;}
         }

         public virtual System.String YKLD {
             get { return _YKLD; }
             set { _YKLD = value;}
         }

        public virtual System.Int32 MaLoaiHinh
        {
            get { return _MaLoaiHinh; }
            set { _MaLoaiHinh = value; }
        }

        public virtual System.Int32 MaLinhVuc
        {
            get { return _MaLinhVuc; }
            set { _MaLinhVuc = value; }
        }

         public virtual LoaiHinh LoaiHinhLookup{
             get { return _LoaiHinhLookup; }
             set { _LoaiHinhLookup = value;}
         }

        public virtual LinhVuc LinhVucLookup
        {
            get { return _LinhVucLookup; }
            set { _LinhVucLookup = value; }
         }

         public virtual IList<CongDan> CongDans{
             get { return _CongDans; }
             set { _CongDans = value; }
         }

         public virtual IList<LanhDao> LanhDaos{
             get { return _LanhDaos; }
             set { _LanhDaos = value; }
         }


        public override int GetHashCode()
        {
            return ID.GetHashCode();
        }

     }
}
